picture: Make setters actually take NULL
authorMatthias Clasen <mclasen@redhat.com>
Wed, 26 May 2021 11:30:09 +0000 (07:30 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 26 May 2021 11:30:57 +0000 (07:30 -0400)
gtk_picture_set_file was claiming to be nullable,
but choked on NULL.

Fixes: #3974
gtk/gtkpicture.c

index c6f82be0c0b0012a16faad8906ce734990bb9eec..194d2fc98abba844a3241b0ba70d21fc6eab2cac 100644 (file)
@@ -586,7 +586,11 @@ gtk_picture_set_file (GtkPicture *self,
   g_set_object (&self->file, file);
   g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_FILE]);
 
-  paintable = gdk_paintable_new_from_file_scaled (file, gtk_widget_get_scale_factor (GTK_WIDGET (self)));
+  if (file)
+    paintable = gdk_paintable_new_from_file_scaled (file, gtk_widget_get_scale_factor (GTK_WIDGET (self)));
+  else
+    paintable = NULL;
+
   gtk_picture_set_paintable (self, paintable);
   g_clear_object (&paintable);